package com.renbiao.pojo;

/*
 * 单例模式-懒汉式
 *
 *   以懒汉式创建对象：
 *       对象在成员变量上，只声明，不创建。当我们在使用到该变量的时候，才会创建出来该对象
 *       第一次访问创建出来单例对象，当第二次到第N次访问时，就不创建对象了，而是取得第一次访问时，创建的对象
 * */
public class FootBall {

    // 将该类的对象，声明成为成员变量
    // 下方的getFootBall()方法要使用到该成员变量，
    // 如果一个静态方法要直接的使用成员变量，那么成员变量也必须是静态的
    private static FootBall fb;

    // 构造方法私有化
    private FootBall(){
    }

    // 想要得到该对象，必须由该类提供方法
    // 该方法必须是一个static静态方法。只有静态方法，才能够使用类去调用
    public static FootBall getFootBall(){
        //如果成员变量是null，说明成员变量还没有被实例化过，需要创建给成员变量实例
        //该实例作为单例对象，为全局使用
        //第一次访问时，创建对象，以后再访问时，不再创建，取得的是第一次创建的对象
        if(fb == null){
            fb = new FootBall();
        }
        return fb;
    }
}